﻿namespace Yaaf.WP7.NativeAccess.ComWrapper.HTC.COM_NativeAccess
{
    using System;
    using System.Runtime.InteropServices;

    using Yaaf.WP7.NativeAccess.IO.Internals.HTC.COM_NativeAccess;

    [ComImport, InterfaceType(ComInterfaceType.InterfaceIsIUnknown), Guid("9690D198-1D76-4461-B084-56121E68F10F")]
    internal interface INativeAccess
    {
        [PreserveSig]
        int OpenFile(string A_0, int A_1, int A_2, int A_3, int A_4, out IntPtr A_5);
        [PreserveSig]
        int ReadFile(IntPtr A_0, IntPtr A_1, int A_2, out int A_3);
        [PreserveSig]
        int CloseFile(IntPtr A_0);
        [PreserveSig]
        int Seek(IntPtr A_0, int A_1, ref int A_2, int A_3);
        [PreserveSig]
        int GetFileSize(IntPtr A_0, out int A_1);
        [PreserveSig]
        int CopyFile(string A_0, string A_1, bool A_2);
        [PreserveSig]
        int StartEnumerateDirectory(string A_0, out FileSystemEntryStructure A_1, out IntPtr A_2);
        [PreserveSig]
        int NextElement(IntPtr A_0, out FileSystemEntryStructure A_1);
        [PreserveSig]
        int CloseEnumerator(IntPtr A_0);
        [PreserveSig]
        int GetFileTime(string A_0, out long A_1, out long A_2, out long A_3);
    }
}

